Building Heterogeneous Safety Cases for Automatically Generated Code
نویسندگان
چکیده
Safety cases provide a mechanism for representing evidence-based arguments that a system is acceptably safe to operate in its intended context. We show how we can automatically combine diverse types of information from heterogeneous sources into a single integrated safety case for a system implemented using automatically generated software. The core argument structure of the safety case is generated from a formal analysis of automatically generated code, based on automated theorem proving, and driven by a set of formal requirements and assumptions. This is then extended by separately specified auxiliary information giving contexts, assumptions, justifications, and constraints, or additional forms of evidence derived from other verification activities, such as testing. The resulting safety case thus combines formal and informal argumentation and makes explicit assumptions which would otherwise be left implicit.
منابع مشابه
Building Certified Libraries for PCC: Dynamic Storage Allocation
Proof-Carrying Code (PCC) allows a code producer to provide to a host a program along with its formal safety proof. The proof attests a certain safety policy enforced by the code, and can be mechanically checked by the host. While this language-based approach to code certification is very general in principle, existing PCC systems have only focused on programs whose safety proofs can be automat...
متن کاملDeriving Safety Cases for the Formal Safety Certification of Automatically Generated Code
We present an approach to systematically derive safety cases for automatically generated code from information collected during a formal, Hoare-style safety certification of the code. We use a generic safety case that is instantiated with respect to the certified safety property and the program. It is complemented by a static system safety case that argues the safety of the framework itself, in...
متن کاملDeriving Safety Cases for Hierarchical Structure in Model-Based Development
Model-based development and automated code generation are increasingly used for actual production code, in particular in mathematical and engineering domains. However, since code generators are typically not qualified, there is no guarantee that their output satisfies the system requirements, or is even safe. Here we present an approach to systematically derive safety cases that argue along the...
متن کاملDeriving Safety Cases for Hierarchical Systems in Model-based Development
Model-based development and automated code generation are increasingly used for actual production code, in particular in mathematical and engineering domains. However, since code generators are typically not qualified, there is no guarantee that their output satisfies the system requirements, or is even safe. Here we present an approach to systematically derive safety cases that argue along the...
متن کاملBuilding certi"ed libraries for PCC: dynamic storage allocation
Proof-carrying code (PCC) allows a code producer to provide to a host a program along with its formal safety proof. The proof attests to a certain safety policy enforced by the code, and can be mechanically checked by the host. While this language-based approach to code certi"cation is very general in principle, existing PCC systems have only focused on programs whose safety proofs can be autom...
متن کامل